package com.zbkj.service.service;

import com.zbkj.common.model.bte.PlatformResponse;
import com.zbkj.common.model.finance.UserRecharge;
import com.zbkj.common.model.order.StoreOrder;
import com.zbkj.common.request.StoreOrderRefundRequest;

import java.io.IOException;

/**
 * 银企支付服务接口
 *
 * @author Swallows
 * @date 2022-08-23 11:08
 */
public interface BankEnterprisePaymentService {

    /**
     * 查询支付结果
     *
     * @param orderNo 订单编号
     */
    Boolean queryPayResult(String orderNo);

    /**
     * 充值接口
     */
    PlatformResponse.ReturnValue preorderRecharge(UserRecharge recharge, String ip) throws IOException;

    /**
     * 商品订单预下单支付
     */
    PlatformResponse.ReturnValue preOrder(StoreOrder order, String ip) throws IOException;

    /**
     * 退款
     */
    PlatformResponse.ReturnValue refund(StoreOrderRefundRequest request, StoreOrder storeOrder) throws IOException;
}
